#include <stdio.h>
int main()
{
    int m []={1,2,3,4,5,6,7,8,9,0};
    int(*p)[4]=(int(*)[4])m;
    printf("%d\n",p[1][2]);
    return 0;
}

//p是行指针，int(*)[]是格式类型转换，把一维数据m转换为二维数组

// 因为一维数据10个，二维数组的列数已经是4了，所以行数为10/4+1=3行，即int (*p)[4] 相当于int p[3][4]={{1,2,3,4},{5,6,7,8},{9,0}}，所以p[1][2]=7
